package com.cyy.common.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cyy.common.pojo.dto.CategoryFormDto;
import com.cyy.common.pojo.dto.common.OptionDto;
import com.cyy.common.pojo.entity.Category;
import com.cyy.common.pojo.query.system.SystemCategoryQuery;
import com.cyy.common.pojo.vo.api.ApiCategoryVo;
import com.cyy.common.pojo.vo.system.SystemCategoryVo;

import java.util.List;

/**
 * <p>
 * 分类表 服务类
 * </p>
 *
 * @author 曹云友
 * @since 2024-04-01
 */
public interface CategoryService extends IService<Category> {

    List<ApiCategoryVo> queryList();

    List<OptionDto<String, Integer>> getOptions();

    void addCategory(CategoryFormDto req);

    void updateCategory(CategoryFormDto req);

    void deleteCategories(String ids);

    IPage<SystemCategoryVo> getPage(SystemCategoryQuery query);

    CategoryFormDto getCategoryFormById(Integer id);
}
